package com.oig.sys.msg.controller;


import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.oig.common.module.SysRequest;
import com.oig.sys.msg.dto.UserExportTaskDto;
import com.oig.sys.msg.mapper.TbExportTaskMapper;
import com.oig.sys.msg.vo.ExportTaskVo;
import com.oig.sys.security.util.SecurityUtil;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@Tag(name = "用户的下载任务查询")
@RestController
@RequestMapping(value = "/userExportTask")
@Slf4j
@RequiredArgsConstructor
public class UserExportTaskController {

    private final TbExportTaskMapper exportTaskMapper;

    /**
     * 普通查询
     */
    @Operation(summary = "用户查询自己收到的消息公告,公共功能，不设权限登，录即可")
    @PostMapping("/page")
    public PageInfo<ExportTaskVo> queryAsPage(@RequestBody SysRequest<UserExportTaskDto> sysRequest){
        log.info("user export task query 2:{}", sysRequest);
        UserExportTaskDto userExportTaskDto = sysRequest.getParamDto();
        if (userExportTaskDto==null){
            userExportTaskDto = new UserExportTaskDto();
        }
        userExportTaskDto.setUserId(SecurityUtil.getDefineUserMain().getId());
        sysRequest.setParamDto(userExportTaskDto) ;
        PageHelper.startPage(sysRequest.getPageNo(), sysRequest.getPageSize());
        List<ExportTaskVo> list = this.exportTaskMapper.queryUserExportTask(sysRequest.getParamDto());
        return new PageInfo<>(list);
    }

}
